System, computer program product and method for scanning and managing documents

ABSTRACT

A system, method and computer program product for scanning and managing documents. The system includes a scanning device, a scan server connected to the scanning device via a network, and a directory server connected to the scan server. The system allows a user of the scanning device to search the directory server for e-mail addresses, fax numbers, or other destination information stored at the directory server, and to e-mail, fax, or otherwise electronically deliver scanned documents from the scanning device. The scan server transmits the e-mail addresses, fax numbers, or other destination information to the scanning device from the directory server. The user of the scanning device can select one or more destinations (e.g., e-mail addresses or fax numbers) received from the scan server. The scanning device transmits the scanned document with the selected destination to the scan server. The scan server transmits the scanned document to the appropriate server, such as an e-mail or fax server. The document is routed, for example by the e-mail or fax server, to the selected destination.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a divisional application of Ser. No. 10/243,645 filed Sep. 16, 2002 and claims priority to Provisional Application Ser. No. 60/374,811 filed Apr. 24, 2002, the entire contents of which are hereby incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is directed to methods, computer-based systems and computer program products for scanning and managing documents or files. More particularly, the present invention allows a user of a scanning device to scan a document and to e-mail and/or fax the scanned document from the scanning device.

2. Discussion of the Background

A system for e-mailing a scanned document from a scanning device is already known. For example, Ricoh's ScanRouter™ Professional enables the capture and delivery of scanned documents from a scanning device. In this conventional system, the scanning device stores a directory of addresses used to deliver the scanned document. The ScanRouter Professional system suits the needs of small and medium companies well.

This conventional system, however, has a number of drawbacks, especially if considered within the environment of a relatively large company. Because the address directory is stored at the scanning device, the size of the address directory is limited and may not hold all of the addresses of a large company's directory. For example, the address book stored on Ricoh's ScanRouter Professional is limited to a maximum of 200 addresses. In addition, because the address directory is stored at the scanning device, each address book needs to be updated each time the company's global address book needs to be updated. For example, the company's global address book is updated each time an employee leaves the company, each time the company hires a new employee, and each time an employee changes position or department within the company. It is estimated that in large companies, the global address book can be updated 1000 times each week. The task of updating each local address book stored at the scanning devices creates a burden on the administrator of the system, and severely increases the traffic over the company's network. This increase in traffic, caused by the need to keep the local address books stored at the scanning devices synchronized with the company's global address book, can slow down the company's entire network. As another drawback, the information contained within the company's directory is exposed to security breaches because the local address books stored in the scanning devices are more easily accessible than the global directory, which can be stored in a secured area.

SUMMARY OF THE INVENTION

The present inventors have determined that there is a need for a system that allows a user to scan a document and to e-mail, fax or otherwise electronically deliver the scanned document from the scanning device, and that can conveniently and efficiently update the addresses, numbers, and other information available to the user. The present invention provides such a system. One object of the present invention is to provide a method, a system and a computer program product that allows a user of a scanning device to scan a document and to e-mail, fax, or otherwise electronically deliver the scanned document from the scanning device, wherein the document is routed to an e-mail address, a fax number, or a destination stored in a directory. In a preferred embodiment, the system includes a global directory server connected to a scan server. The global directory server stores the e-mail addresses, fax numbers, destinations and/or other information accessed by the user. In another embodiment, the system includes the global directory server and, in addition, a local directory that stores the e-mail addresses, fax numbers, destinations and/or other information in the scanning device.

The scan server passes the information stored at the global directory server to the scanning device. The user of the scanning device, who desires to search the global directory for e-mail addresses, fax number and/or destinations, can search the global directory by sending queries to the scan server, which passes the queries to the directory server. Alternatively, the user can directly e-mail or fax a document without accessing the global directory server by accessing the local directory or by otherwise entering the addresses and/or fax numbers using the scanning device user interface.

Advantageously, the system can be used within a company so that various employees can access the company's global directory, or address book. The global directory need not be copied or stored at the scanning device. Instead, the global directory can be maintained in a secure, central location. The company's administrator can update the global directory without having to update any local directory or address book that would be stored at the scanning devices.

The user of the scanning device may be prompted to log in the system by entering a login name and a password. This login information is transmitted to the scan server. The scan server can confirm a domain authentication with a domain controller to ensure that the user is authorized to use the system. The scan server can also process directory authentication to control access by the user of the global directory. The scan server also processes documents or files received from the scanning device. The scan server routes the documents to the appropriate server, for example an e-mail server or a fax server, as requested by the user of the scanning device.

Advantageously, several scanning devices can be connected via a network to the scan server. Within a company, several scanning devices may be located on different floors, in different rooms, or different buildings. The employees can access the global directory from any of the scanning devices. The administrator can maintain one global directory so that the information available to the users throughout the company is efficiently updated.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete appreciation of the invention and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, wherein:

FIG. 1 is a block diagram showing an overall system configuration according to one embodiment of the present invention;

FIG. 2 is a block diagram illustrating a browser for the scanning device according to one embodiment of the present invention;

FIGS. 3-6 show examples of menus displayed on a display screen of the scanning device according to one embodiment of the present invention;

FIGS. 7-8 show flowcharts of a method of managing documents from the scanning device according to one embodiment of the present invention;

FIG. 9 is a block diagram illustrating a scanning device according to one embodiment of the present invention;

FIG. 10 is a schematic representation of a scanning device according to one embodiment of the present invention;

FIG. 11 is a block diagram illustrating a scan server according to one embodiment of the present invention;

FIG. 12 is a schematic representation of a scan server according to one embodiment of the present invention; and

FIGS. 13-14 show flowcharts of a method of managing documents with an MFD browser according to one embodiment of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring now to the drawings, wherein like reference numerals designate identical or corresponding parts throughout the several views, FIG. 1 is a block diagram of a system 5 for scanning and managing documents according to the present invention, and in particular to allow a user to scan a document and to e-mail and/or fax the scanned document from the scanning device. The system 5 includes a network 100 that interconnects at least one, but preferably a plurality of scanning devices 10-30, to a scan server 40. The network 100 preferably uses TCP/IP (Transmission Control Protocol/Internet Protocol) because this protocol is commonly used, but other protocols are possible. The network 100 can be a local area network, a wide area network, any type of network such as an intranet, an extranet, or a combination thereof. Other communications links for the network 100, such as a virtual private network, or a wireless link, may be used as well.

As shown in FIG. 1, the scanning devices 10-30 can be multi-function devices, or “MFDs.” An MFD can incorporate a scanner, a copy machine, a printer, a fax machine, a digital camera, other office devices, and combinations thereof. Various types of MFDs are commonly known in the art and share common features and hardware with the MFDs of the present invention. In one embodiment of the present invention, the MFD is a portable device, such as a digital camera, connectable to the Internet via wireless connection. Such an MFD combines digital imaging with the power of the Internet so that one can capture still, sounds or videos and share them wirelessly from various locations. The MFD can create web pages, send and receive e-mails with attachments, edit images, FTP files, surf the Internet, and send a fax. In another embodiment, the MFD is a multiple scanner, photocopier and printer, as described in more detail below with corresponding FIGS. 9-10.

As shown in FIG. 1, the scan server 40 is connected to a directory server 60 (or “address book server” or “global directory”). The directory server 60 can include information such as the names, addresses, e-mail addresses, phone/fax numbers, other types of destination information, and authorization of individuals. Other information can be included in the directory server 60. Examples of directory servers 60 compatible with the present invention include, but are not limited to, Lotus Notes™, Microsoft Exchange™, and LDAP (“Lightweight Directory-Access Protocol”) enabled directory servers. LDAP is a software protocol that enables a user to locate organizations, individuals, files, devices in a network. The scan server 40 can also be connected to a network domain controller 50 that controls authentication of the MFD users.

The system 5 provides access to the users of the MFDs 10-30 of the information stored at the directory server 60 via the scan server 40. Accordingly, a user can scan a document at the MFD 20, and request a search of the company's global directory stored at the directory server 60. The scan server 40 can pass the search request to the directory server 60 and can receive the search results (e.g., e-mail addresses and/or fax numbers) from the directory server 60. The scan server 40 can pass the search results to the MFD 20, which can temporarily store and display them. In a preferred embodiment, the stored search results are erased automatically from the MFD after the job of the MFD is completed, or after a time period (e.g., two minutes) that can be set by the administrator of the system. The user can select e-mail addresses and fax numbers from the displayed search results and request that the scanned document be e-mailed and/or faxed to the selected addresses. Alternatively, the user can enter the addresses and numbers, or can select addresses and numbers from a local directory stored in the scanning devices 10-30. The local directory can be updated automatically or periodically after the directory server 60 is updated.

The scan server 40 receives the scanned document and the selected addresses/numbers from the MFD 20 and routes the scanned document to the appropriate server. For example, if the user requests the scanned document to be e-mailed, the, scan server 40 routes the scanned document to an e-mail server 70. If the user requests the scanned document to be faxed, the scan server 40 routes the scanned document to a fax server 80. The scan server 40 can also route the scanned document to other applications 90, which may, for example, convert a document from one format (e.g., TIFF, “Tag Image File Format”) to another (PDF, “Portable Document Format”).

In the present embodiment, the Scan Server 40 can be configured to act as an intermediate agent between a plurality of computerized services (e.g., provided by devices 50, 60, 70, 80, and 90) so that the MFDs can perform a plurality of functions in a same scanning job. The Scan Server 40 can be configured to display the plurality of services based on a request from the browser 25. The MFD can display screens prompting the entry of a plurality of parameters such as e-mail addresses, fax numbers and billing codes, on the LCD panel based on the communication between the Browser 25 and the Scan Server 40. An MFD can then transmit the scanned document to a plurality of servers, e.g., servers 70, 80, and 90.

In a preferred embodiment, the MFDs 10-30 and the scan server 40 exchange data using the protocol HTTP (“Hypertext Transfer Protocol”) or HTTPS (HTTP over Secure Socket Layer) over the network 100. Other protocols can equivalently be used with the present invention. Preferably, the MFDs 10-30 and the scan server 40 exchange data using the format XML (“Extensible Markup Language”). Other formats, such as HTML, can equivalently be used with the present invention. In a preferred embodiment, the e-mail server 70 is incorporated into the scan server 40. E-mail server 70 can include, but is not limited to, Lotus Notes™ e-mail server, Microsoft Exchange™ e-mail server, and SMTP (“Simple Mail Transfer Protocol”) e-mail servers. In a preferred embodiment, the fax server 80 is the Captaris' RightFax™ server.

The system 5 provides three levels of user authentication. At a first authentication level, no user authentication is performed. Under this first level, any user can use the MFDs 10-30 to scan, copy, print, access the global directory server 60 to e-mail and fax documents.

At the second authentication level, the user is domain authenticated by the network domain controller 50. Under this second level, the user enters login information, such as a login name and a password. This login information is transmitted to the scan server 40 via the network 100. The scan server 40 passes the login information to the network domain controller that confirms (or not) the user's domain authentication. The confirmation is passed to the MFDs 10-30 via the scan server 40. If the user is domain authenticated, the user can use the MFD and its functions. In one embodiment, the system 5 can be configured so that certain functions of the MFDs 10-30, such as copying and direct e-mail and faxing (without access to the global directory server 60), be accessible to a user who is not domain authenticated. Under this embodiment, however, the system bars the non-authenticated user from using other functions, including access to the global directory server 60. Under another embodiment, the system bars the non-authenticated user from using all functions provided by the MFDs 10-30.

At the third authentication level, the user is authenticated by the directory server 60. Under this third level, the directory server 60 can control what portions (if any) of the directory, to which the user can have access. For example, employees of a particular division of the company (e.g., human resources, legal, etc . . . ) may have access to the portion of the directory that corresponds to that division only. More sensitive information can thus be protected and accessible only by certain individuals within the company. This third authentication level can be, but need not be, in addition to the second level.

Under the second and third authentication levels, the system can create a user profile such that upon authentication, the system provides access to the user only for certain functions that correspond to the user profile. Under this embodiment, different authenticated users can have different user profiles and thus have access to different functions. The administrator can control the user profiles.

In a preferred embodiment, the scan server 40 can include an MFD profiler that sets a specific profile for a specific MFD. The administrator of the system 5 can create, change and maintain profiles via a profile screen on the scan server 40. The profile can include an identification for the MFD, such as a serial number, and various parameters (computer network-name, machine location, etc . . . ) used to configure the exchange of information between the scan server 40 and the MFDs 10-30. These parameters can relate to the authentication scheme used for each MFD, to the data format/protocols used, to the e-mail server 70, to the fax server 80, and/or to the directory server 60. The profile can also include the time period during which the search results from the directory server are stored at the scanning device before being erased.

FIG. 2 illustrates an MFD 20's browser 25 configured to exchange information between the MFD 20 and the scan server 40 according to one embodiment of the present invention. FIG. 2 shows the software components in the MFD-server system; the hardware elements are not shown in FIG. 2. The scan server 40 shown in FIG. 2 includes an authentication device 260 configured to perform the authentication functions discussed above. The scan server 40 also includes an administration device 265 which allows the system administrator to administer the system 5. For example, the administrator of the system can access the profiler 280 via the administration device 265 to set user profiles and/or MFD profiles for the MFDs 10-30 connected to the scan server 40. The scan server 40 also includes a directory gateway 270 configured to communicate with the directory server 60. The scan server 40 also includes a document router 275 configured to route the documents received from the MFDs to the appropriate server 70, 80 or 90.

As shown in FIG. 2, the MFD 20 includes an engine control service (ECS) 200 that controls for example the scanning engine of the MFD 20. A memory control service (MCS) 205 controls access to the memory of the MFD 20. An operation panel control service (OCS) 215 generates displays for the LCD of the MFD 20. For example, the OCS 215 can generate conventional menus for MFD operation and the menus shown in FIGS. 3-6. A system control service (SCS) 225 controls and/or monitors sensors within the MFD 20. For example, the SCS 225 controls the touch screen sensors, paper jam sensors and scanning operation sensors. Accordingly, the SCS 225 can manage the status of the MFD 20 based on the information from the sensors. A network control service (NCS) 220 controls communication between the browser 25 and the scan server 40. Optionally, a secure socket layer (SSL) 230 provides added security for communications between the NCS 220 and the browser 25. A command input service (CIS) 240 processes input information, e.g., from the LCD touch panel and a key pad of the MFD 20. A user of the MFD can enter information and commands using the LCD touch panel and the key pad. The CIS 240 can process such information and commands entered by a user (e.g., forwarded to the CIS 240 by the SCS 225). The CIS 240 can generate a command (e.g., a display command) based on such processing and transmit the command to other components of the MFD (e.g., to the OCS 215 to display a graphic on the LCD). The CIS 240 can also exchange information and commands with the NCS 220 for processing with the browser 25 in connection with the server 40.

Conventional MFDs include ECSs, MCSs, OCSs, NCSs, SCSs, and CISs which are firmware for implementing and controlling each hardware component of the MFD. In the present invention, however, the NCS 220 is configured to communicate with the browser 25. For instance, the NCS 220 has additional capabilities for communicating using the HTTP protocol. The NCS 220 is also configured to communicate with the server 40 so that the NCS 220 exchanges data between the browser 25 and the server 40. For example, The NCS 220 can transmit to the server 40 a request for an e-mail address and can receive from the server 40 a selected e-mail address, or the NCS 220 can transmit to the server 40 login information and can receive a user authentication confirmation from the server 40 (and from the directory server 60) during an authentication process.

The browser 25 includes an HTTP command processor 235 that communicates with the network control service (NCS) 220 of the MFD 20. For example, a request for an e-mail address entered by the user via the MFD key pad, or a request for displaying information on the LCD, such as FIGS. 3-6, can be passed from the NCS 220 to the browser 25 by the HTTP command processor 235. The HTTP command processor 235 can exchange data in the HTML format with the browser's HTML parser 250, and can exchange data in the XML format with the XML parser 255. The parsers 250 and 255 can check the data from the HTTP command processor 235 for syntax, process the data for HTTP command processor 235. The present invention can include conventional parsers, which are usually part of a compiler.

The HTTP command processor 235 can be provided with a program code for implementing a specific application, such as, user authentication processing which can be implemented with the directory service of the server 40. The HTTP command processor 235 can process information based on definitions of the specific application. For example, the HTTP command processor 235 can process information provided by the user, such as User Name or Password, and generate an HTTP request based on this processing for the server 40. The HTTP command processor 235 can transmit this HTTP request to the NCS 220 to be transmitted to the server 40.

The HTTP command processor 235 can also process information received from the server 40 (via the NCS 220). For example, the HTTP command processor 235 can receive an HTTP response generated by the server 40 which includes parameters for operating the MFD. The parameters can be stored for example in the profiler 280 of the server 40. The parameters can include a specific user ID as a result of the user authentication processing. Furthermore, the parameters can include scanning job parameters for the specific user ID, such as default size of papers, scanning resolution setting, condition of the document feeder, or department code for billing the scanning operation. The HTTP command processor 235 can process this information and generate commands to control the MFD in accordance with the information, e.g., can request the MFD to scan according to the scanning job parameters for the specific user ID. As another example, the HTTP command processor 235 can generate a graphic drawing command for the LCD panel. The HTTP command processor 235 can transmit the commands to the appropriate MFD firmware (e.g., the OCS 215) so as to be executed. For example, the OCS 215 can receive the graphic drawing command and execute it by displaying a graphic (e.g., FIGS. 3-6) on the LCD panel.

FIGS. 13 and 14 show flowcharts of a method of managing documents with the MFD browser 25. More specifically, FIG. 13 shows an HTTP request handling process flow, and FIG. 14 shows an HTTP response handling process flow. Turning to FIG. 13, at step 3100 a user operates the MFD panel, for example selects a button on the MFD's LCD touch panel. At step 3150, the SCS 225 detects the panel operation, e.g. a location of the selected button, and transmits panel operation information to the CIS 240. At step 3200, the CIS 240 interprets the panel operation information and generates a command. This interpretation and generating of the command can be based on a definition described in a predetermined program code. The predetermined program code can be provided for implementing the specific application executed by the MFD 20 and the server 40. For example, the specific application may include a user authentication using the directory server 60, or scan-to-eMail services with MFD 20 and server 40. The predetermined program code for the specific application can be provided in an IC Card, or other medium, for the MFD.

At step 3250, the CIS 240 transmits the command to the HTTP command processor 235. At step 3300, the HTTP command processor 235 generates an HTTP requests composed in the HTML language and/or the XML language based on the command. At step 3350, the HTTP command processor 235 transmits the HTTP request to the NCS 220. Optionally, the HTTP command processor 235 transmits the HTTP request to the SSL 230, i.e., the HTTP request is sent using HTTPS protocol or Secure Sockets Layer over HTTP, based on the definition of the predetermined program code for the specific application. At step 3400, the NCS 220 transmits the HTTP request to the scan server 40.

Turning to FIG. 14, at step 4100, the scan server 40 generates an HTTP response based on the processing defined by the specific application. For example, the authentication result information can be included in the HTTP response. The scan server 40 transmits this HTTP response to the NCS 220. In this process, the HTTP response can be sent using HTTPS protocol depending on the definition of the predetermined program code for the specific application. At step 4150, the NCS 220 receives the HTTP response and transmits it to the HTTP command processor 235. At step 4200, the HTTP command processor 235 receives the HTTP response from the NCS 220 and transmits it to the HTML parser 250 and/or to the XML parser 255. At step 4300, the XML parser 255 processes the HTTP response for the HTTP command processor 235. At step 4400, the HTML parser processes the HTTP response for the HTTP command processor 235. At step 4450 the HTTP command processor 235 generates a command based on this processing, and transmits the command to one of the MFD components, e.g. the CIS 240. At step 4500, the CIS 240 generates a display request based on the command and transmits the display request to the OCS 215. At step 4600, the OCS 215 processes the display request. For example, at step 4700, the LCD panel displays graphics, such as the menus shown in FIGS. 3-6.

In a preferred embodiment, the MFDs 10-30 provide interactive menus based on information inputted by the operator of the MFD, so as to allow the operator to conveniently take advantage of the services provided by the system 5. Examples of menus displayed on touch sensitive LCDs of the MFDs are shown in FIGS. 3-6. FIG. 3 illustrates a screen 300 that introduces the present invention to the user and that provides touch sensitive buttons, for example buttons 305-325. Upon touching the button 305, the MFD displays a screen (not shown) that prompts the user to enter login information. Upon touching the button 310, the MFD displays a screen (such as screen 500 shown in FIG. 5) that permits the user to fax a document. Upon touching the button 315, the MFD displays a screen (such as screen 600 shown in FIG. 6) that permits the user to e-mail a document. Upon touching the button 320, the MFD displays a screen (such as screen 400 shown in FIG. 4) that prompts the user to enter settings for scanning a document. Upon touching the button 325, the MFD displays a screen (not shown) that displays a job log, which keeps track of previous jobs performed by the MFD. The screen 300 includes a system display portion 330 that displays system messages, such as the time and date, error messages, or instructions to the user. The screen 300 includes a main display portion 335 that displays information for the user. Screen 300 can include other display portions. The screen 300 also includes buttons 340, which permit the user to scroll through the display shown in the main display portion 335.

FIG. 4 illustrates a screen 400 with touch sensitive buttons used to set the scanning parameters. The screen 400 can include a default button 405 to request the MFD to scan the document using its default scanning parameters (e.g., 200 dpi). The default parameters may be displayed below the button 405. Upon being touched, a “Fine Scan” button 410 requests the MFD to scan the document using finer scanning parameters (e.g., 300 dpi) than the default parameters. These finer scanning parameters can be displayed below the button 410. Upon being touched, a “Super Scan” button 415 requests the MFD to scan the document using even finer scanning parameters (e.g., 400 dpi) than the fine parameters. These even finer scanning parameters can be displayed below the button 415.

The screen 400 can also include a “Create PDF” button 430 that requests, upon touching, the document to be converted to the PDF format. This conversion can take place at the MFD, at the scan server, or at a conversion server 90. In a preferred embodiment, the document is sent from the MFD to the scan server 40 in the TIFF format along with the request to convert to the PDF format. The scan server 40 then sends the document to the conversion server 90 to be converted into the PDF format.

If the user does not want the document converted to the PDF format, the user can touch a “Keep TIFF” button 435 to request that the document be kept in the TIFF format. The user can also touch the “Scan Size” button 440 to set the size of the document to be scanned. The user can also select a single sided scan by touching the “Single-Sided” button 420, or select a double sided scan by touching the “Double-Sided” button 425. Once the user has selected all the scanning parameters, the user can save his selection by touching the “Save” button 445. Alternatively, if the user wants to return to the previous screen 300, the user can touch the “Exit” button 450.

FIGS. 5 and 6 illustrate screens 500 and 600 used to request faxing and e-mailing documents, respectively. Text (e.g., for a fax note or an e-mail message) can be entered via the LCD using a touch sensitive keyboard (not shown) displayed on the LCD. Upon touching the “Enter Fax Note” button 510, the MFD displays a screen that permits the user to enter a fax note along with the document to be faxed. The fax note can be displayed in portion 555 of the screen 500. Upon touching the “Enter Fax Number” button 520, the MFD displays a screen that permits the user to enter the fax number to which the document is to be faxed. The user can manually enter the fax number if the user already knows the fax number. If the user does not already know the fax number, the user can look it up in the global directory, as discussed next.

Upon touching the “Lookup Fax Number” button 525, the MFD displays a screen that prompts the user to enter the name(s) of a recipient(s), or the name of a group of recipients (e.g., “marketing,” “management,” “security,” “legal department,” “blue division,” “softball team,” etc . . . ). Search criteria other than names can be used. The MFD can send the names or other search criteria to the scan server 40, which passes the information to the directory server 60. The directory server 60 then returns the fax numbers for the names entered by the user to the scan server 40, which passes the fax numbers to the MFD for displaying on the portion 545 of the screen 500. The display portions 550 can be touched to select (e.g. by highlighting) fax numbers listed on the portion 545. The selected fax numbers can be removed from the recipients' list by touching the “Remove Fax Number” button 530. Upon touching the “OK” button 535, the information received via the screen 500 can be processed by the MFD to fax the document. The user can return to the previous screen by touching the “Cancel” button 540. Upon touching the “Billing Code” button 515, the MFD displays a bill management screen (not shown) to receive billing information. For example, the bill management screen would prompt the user to enter department code representing the department to which the user belongs. With this feature, the MFD can either locally process the billing information and/or transmit the billing information to the server 40 for centralized processing.

Turning to the screen 600 illustrated in FIG. 6, upon touching the “Enter Subject” button 605, the MFD displays a screen that permits the user to enter a subject for the document to be e-mailed. This subject can be displayed in portion 655 of the screen 600. Upon touching the “Enter E-mail Message” button 610, the MFD displays a screen that permits the user to enter an e-mail message along with the document to be e-mailed. Upon touching the “Document Name” button 615, the MFD displays a screen that permits the user to enter the name of the document to be e-mailed. Upon touching the “Enter E-mail Address” button 620, the MFD displays a screen that permits the user to enter the e-mail address to which the document is to be e-mailed. The user can manually enter the e-mail address if the user already knows the e-mail address. If the user does not already know the e-mail address, the user can look it up in the global directory, as discussed next.

Upon touching the “Lookup E-mail Address” button 625, the MFD displays a screen that prompts the user to enter the name(s) of a recipient(s), or the name of a group of recipients (e.g., “marketing,” “management,” “security,” “legal department,” “blue division,” “softball team,” etc . . . ). Search criteria other than names can be used. The MFD can send the names or other search criteria to the scan server 40, which passes the information to the directory server 60. The directory server 60 then returns the e-mail addresses for the names entered by the user to the scan server 40, which passes the e-mail addresses to the MFD for displaying on the portion 645 of the screen 600. The display portions 650 can be touched to select (e.g. by highlighting) the e-mail addresses listed on the portion 645. The selected e-mail addresses can be removed from the recipients' list by touching the “Remove E-mail Address” button 630. Upon touching the “OK” button 635, the information received via the screen 600 can be processed by the MFD to e-mail the document. The user can return to the previous screen by touching the “Cancel” button 640.

FIG. 7 illustrates a method of authenticating a user according to one embodiment of the present invention as performed by the MFDs 10-30. At step 705, the MFD inquires whether a command is received from the user to display a login screen. For example, the user can press a login button on the LCD of the MFD 20, such as the “Log in” button 305 of screen 300 shown in FIG. 3. At step 710, the MFD 20 displays the login screen if the command is received. At step 715, the MFD 20 inquires whether the login information is received from the user. For example, the MFD 20 can inquire whether the user entered a user name, a password, and a domain name. Once the login information is received, the MFD 20 sends the login information to the scan server 40 at step 720. The scan server 40 then sends the login information to the network domain controller 50. The domain controller 50 verifies the login information and sends a authentication confirmation to the scan server 40 that forwards the confirmation to the MFD 20. At step 725, the MFD 20 inquires whether the authentication confirmation is received from the scan server 40. Once the MFD 20 receives the user authentication, the MFD 20 downloads from the scan server 40 a user's home page for display at step 730. For example, the user's home page can include a start page, such as the one shown in FIG. 3. The user home page can be a kind of default (portal) page initially displayed after authentication. In the present invention, this home page can be generated based on the result of user authentication. In a preferred embodiment, the user home page can be provided with a “Help” button, and/or a “About” button to provide instruction and information for using system of the present invention.

FIG. 8 illustrates a method of accessing the global directory according to one embodiment of the present invention, as performed by the MFD 20. The global directory can be accessed for the purpose of performing a search, such as a fax number search and/or an e-mail address search. At step 805, the MFD 20 inquires whether the user requested to search the global directory. For example, the user can request such a search by pressing the lookup buttons 525 and 625 shown in FIGS. 5-6. If such a search is requested, the MFD 20 displays a screen at step 810 that prompts the user to enter a search string, for example a string of at least two characters. At step 815, the MFD 20 inquires whether the search string has been entered. Once the search string is entered, the MFD 20 sends the search string to the scan server 40 at step 820. The scan server 40 forwards the search string to the directory server 60, which performs the search and transmits the search results to the scan server 40. The scan server 40 transmits the search results to the MFD 20. At step 825, the MFD 20 inquires whether the search results have been received from the scan server 40. Once the search results are received, the MFD displays the search results on its display at step 830.

FIGS. 9-10 illustrate an example of the MFD 20, which includes a central processing unit (CPU) 931, and various elements connected to the CPU 931 by an internal bus 932. The CPU 931 services multiple tasks while monitoring the state of the MFD 20. The elements connected to the CPU 931 include a read only memory (ROM) 933, a random access memory (RAM) 934, a hard disk drive (HDD) 935, a floppy disk drive (FDD) 936 capable of receiving a floppy disk 907, a communication interface (I/F) 938, and a modem unit 939. In addition, a control panel 937, a scanner unit 940, a printer unit 941, and an image processing device 942 can be connected to the CPU 931 by the bus 932. Both the I/F 938 and the modem unit 939 are connected to a communication network 100.

In a preferred embodiment, the program code instructions for the MED 20 are stored on the HDD 935 via an IC card. Alternatively, the program code instructions can be stored on the floppy 907 so that the program code instructions may be read by the FDD 936, transferred to the RAM 934 and executed by the CPU 931 to carry out the instructions. These instructions can be the instructions to perform the MFD's functions described above. These instructions permit the MFD 20 to interact with the scan server 40 via browser 25 and to control the control panel 937 and the image processing units of the MFD 20.

During a start-up of the MFD 20, the program code instructions may be read by the CPU 931, transferred to the RAM and executed by the CPU 931. Alternatively, the program code instructions may be loaded to the ROM 933. It is therefore understood that in the present invention any of the floppy disk 907, the HHD 935, the RAM 934, and the ROM 933 correspond to a computer readable storage medium capable of storing program code instructions. Other devices and medium that can store the instructions according to the present invention include for example magnetic disks, optical disks including DVDs, magneto-optical disks such as MOS, and semiconductor memory cards such as PC cards.

In a preferred embodiment, the control panel 937 includes a display screen that displays information allowing the user of the MFD 20 to interact with the scan server 40, such as screens 300-600 shown in FIGS. 3-6. The display screen can be a liquid crystal display (LCD), a plasma display device, or a cathode ray tube (CRT) display. The display screen does not have to be integral with, or embedded in, the control panel 937, but may simply be coupled to the control panel 937 by either a wire or a wireless connection. The control panel 937 may include keys for inputting information or requesting various operations. Alternatively, the control panel 937 and the display screen may be operated by a keyboard, a mouse, a remote control, touching the display screen, voice recognition, or eye-movement tracking, or a combination thereof.

FIG. 11 is a block diagram of the server 40 according to one embodiment of the present invention. FIG. 12 is a schematic representation of the server 40. The server 40 includes a central processing unit 1000 (CPU) that communicates with a number of other devices by way of a system bus 1500. The server 40 includes a random access memory (RAM) 1900 that hosts temporary storage values used in implementing the authenticating, routing and managing functions of scanned documents.

A conventional personal computer or computer workstation with sufficient memory and processing capability may also be configured to operate as the server 40. The central processing unit 1000 is configured for high volume data transmission and performing a significant number of mathematical calculations in processing communications and database searches. A Pentium III microprocessor such as the 1 GHz Pentium III manufactured by Intel Inc. may be used for the CPU 1000. This processor employs a 32 bit architecture. Other suitable processors include the Motorola 500 MHZ PowerPC G4 processor and the Advanced Micro Devices 1 GHz AMD Athlon processor. Multiple processors or workstations may be used as well.

The ROM 1800 is preferably included in a semiconductor form although other read-only memory forms including optical media may be used to host application software and temporary results. The ROM 1800 connects to the system bus 1500 for use by the CPU 1000. The ROM 1800 includes computer readable instructions that, when executed by the CPU 1000, can perform the different authenticating, routing and managing functions discussed above associated with scanned documents from MFDs. An input controller 1600 connects to the system bus 1500 and provides an interface with various peripheral equipment including a keyboard 1610 and a pointing device such as a mouse 1620. The input controller 1600 may include different ports such as a mouse port in the form of a PS2 port or, for example, a universal serial bus (USB) port. The keyboard port for the input controller 1600 is in the form of a mini-DIN port although other connectors may be used as well. The input controller 1600 provides sound card connections so that external jacks on the sound card allow users to attach microphone speakers or an external sound source. The input controller 1600 also may include serial ports or parallel ports as well.

A disk controller 1400 is in the form of an IDE controller and connects via ribbon cables to a floppy disk drive 1410 as well as a hard disk drive 1420, a CD-ROM drive 1180 and a compact disk 1190 (FIG. 12). In addition, a PCI expansion slot is provided on the disk controller 1400 or mother board that hosts the CPU 1000. An enhanced graphic port expansion slot is provided and provides 3-D graphics with fast access to the main memory. The hard disk 1210 may also include a CD-ROM that may be readable as well as writeable. A communication controller 1300 provides a connection, for example by way of an Ethernet connection to a network 1310, which can be the network 100. In one embodiment, the network 1310 and the connection to the communication controller 1300 are made by way of a plurality of connections including a cable-modem connection, DSL connection, dial-up modem connection, and the like that connect to the communication controller 1300.

An input/output controller 1200 also provides connections to external components such as an external hard disk 1210, printer 1220, which can be MFD 10-30, for example, by way of an RS 232 port, a SCSI bus, an Ethernet or other network connection which supports any desired network protocol such as, but not limited to TCP/IP, IPX, IPX/SPX, or NetBEUI.

A display controller 1100 interconnects the system bus 1500 to a display device, such as a cathode ray tube (CRT) 1110. While a CRT is shown, a variety of other display devices may be used such as an LCD (liquid crystal display), or plasma display device.

The mechanisms and processes set forth in the present description may be implemented using a conventional general purpose microprocessor(s) programmed according to the teachings of the present specification, as will be appreciated to those skilled in the relevant arts. Appropriate software coding can readily be prepared by skilled programmers based on the teachings of the present disclosure, as will also be apparent to those skilled in the software art. In particular, the computer program product for authenticating, routing, and managing scanned documents according to the present invention can be written in a number of computer languages including but not limited to C, C++, Fortran, and Basic, as would be recognized by those of ordinary skill in the art. The invention may also be implemented by the preparation of applications specific integrated circuits or by interconnecting an appropriate network of conventional component circuits, as will be readily apparent to those skilled in the art.

The present invention thus also includes a computer-based product that may be hosted on a storage medium and include instructions that can be used to program a computer to perform a process in accordance with the present invention. This storage medium can include, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROM, magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, Flash Memory, Magnetic or Optical Cards, or any type of media suitable for storing electronic instructions.

Additional Benefits of the Present Invention

Historically, business applications ran on mainframe computers and users executed operations from terminal consoles by sending instruction commands. The terminal consoles had no computing power other than displaying data stream sent back from the mainframe computer which ran the actual applications. As LAN (Local Area Network) became available, the Client—Server architecture was introduced. The Client—Server architecture utilizes the client computer's computing power to offload the mainframe from data processing, resulting in a more efficient use of the resources and better overall performance.

This Client—Server technology introduced a new problem however. Each and every computer needs to have an application program installed. Installation, upgrades, and maintenance of the client require a lot of time and human support, which increase operation cost. Furthermore, this approach lacks flexibility because different versions of applications on clients and servers should match.

Once introduced, the web browser was well accepted because it not only solves the problems of the Client—Server architecture but it also allows the user to maintain the benefit of distributed computing. Specifically, the web browser eliminates the need for client program maintenance because application programs and/or web pages are loaded dynamically at the time the user accesses the web site. The user is guaranteed to have the latest version of the application. As a result, PCs no longer need to have application programs installed manually and permanently on their local hard disk. This is why a PC web browser is sometimes referred to as “thin client technology;” it is free from relatively bulky application programs.

The MFD browser according to the present invention provides the benefits of thin client technology to MFDs because it does not need manual program installation or program upgrade but still guarantees the latest and/or only appropriate software loaded from a web site. Once the MFD browser is incorporated in the MFD, a web server can identify the capabilities of the MFD and dynamically download and run selected programs by a pre-defined criterion. This criterion can be used to run different types of applications by department, e.g. a patent search and a print program for a legal department or a resume management application for a human resources department. Advantageously, the present invention can be incorporated into the system and method for managing documents disclosed in co-pending Ser. No. 09/795,438, the entire content of which is hereby incorporated by reference.

Obviously, numerous additional modifications and variations of the present invention are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims the present invention may be practiced otherwise than as specifically described herein. 

1. (canceled)
 2. A method of obtaining directory information from an external server via network, comprising the steps of: transmitting a lightweight directory address protocol (LDAP) search query from an image processing device to a first computer remote from the image processing device; retrieving, by the first computer, a result of the LDAP search query; transmitting the result to the image processing device; displaying the result on a display of the image processing device; generating, at the image processing device, image data corresponding to an image processing operation at the image processing device; and transmitting the image data from the image processing device to at least one destination selected from the result of the LDAP search query.
 3. The method of claim 2, wherein: the at least one destination comprises at least one of an email address and a facsimile number.
 4. The method of claim 2, further comprising the steps of: receiving the image data and information indicating the at least one destination at a second computer remote from the image processing device; and routing, at the second computer, the image data to the at least one destination.
 5. The method of claim 2, further comprising the step of: transmitting user identification information from the image processing device to the first computer.
 6. The method of claim 5, further comprising the step of retrieving, by the first computer, menu information corresponding to the user identification information.
 7. The method of claim 6, further comprising the step of: displaying the menu information on the display of the image processing device.
 8. The method of claim 7, wherein: the menu information indicates that an LDAP search query function is available to the user of the image processing device.
 9. A system for obtaining directory information from an external server via network, comprising: a first network interface, at an image processing device, configured to transmit an LDAP search query from the image processing device to a first computer remote from the image processing device; a first module, at the first computer, configured to retrieve a result of the LDAP search query; a second network interface, at the first computer, configured to transmit the result to the image processing device; a display, at the image processing device, configured to display the result of the LDAP search query; a processor, at the image processing device, configured to generate image data corresponding to an image processing operation at the image processing device; and the first network interface configured to transmit the image data from the image processing device to at least one destination selected from the result of the LDAP search query.
 10. The system of claim 9, wherein: the at least one destination comprises at least one of an email address and a facsimile number.
 11. The system of claim 9, further comprising: a third network interface, at a second computer remote from the image processing device, configured to receive the image data and information indicating the at least one destination from the image processing device; and a second module, at the second computer, configured to route the image data to the at least one destination.
 12. The system of claim 9, wherein: the first network interface is configured to transmit user identification information from the image processing device to a second computer remote from the image processing device.
 13. The system of claim 12, further comprising: a first module, at the second computer, configured to retrieve menu information corresponding to the user identification information.
 14. The system of claim 13, wherein: the display, at the image processing device, is configured to display the menu information on the display screen of the image processing device.
 15. The system of claim 14, wherein: the menu information indicates that an LDAP search query function is available to a user of the image processing device.
 16. A system for obtaining directory information from an external server via network, comprising: means for transmitting a lightweight directory address protocol (LDAP) search query from an image processing device to a first computer remote from the image processing device; means for retrieving, at the first computer, a result of the LDAP search query; means for transmitting the result to the image processing device; means for displaying the result on a display of the image processing device; means for generating, at the image processing device, image data corresponding to an image processing operation at the image processing device; and means for transmitting the image data from the image processing device to at least one destination selected from the result of the LDAP search query.
 17. A method of obtaining network authentication of a user of an image processing device, comprising the steps of: transmitting user authentication information from the image processing device to a network domain controller remote from the image processing device; verifying the user authentication information at the network domain controller; receiving, at the image processing device, the result of the verification step performed at the network domain controller; and controlling at least on function of the image processing device based on the result of the verifying step.
 18. A system of obtaining network authentication of a user of an image processing device, comprising: a first network interface, at the image processing device, configured to transmit user authentication information from the image processing device to a network domain controller remote from the image processing device; a first module, at the network domain controller, configured to verify the received user authentication information; the first network interface, at the image processing device, configured to receive the result of the verification performed at the network domain controller; and a second module, at the image processing device, configured to control at least on function of the image processing device based on the result of the verification.
 19. A system of obtaining network authentication of a user of an image processing device, comprising: means for transmitting user authentication information from the image processing device to a network domain controller remote from the image processing device; means for verifying the user authentication information at the network domain controller; means for receiving, at the image processing device, the result of means for verifying performed at the network domain controller; and means for controlling at least on function of the image processing device based on the received result of the means for verifying.
 20. A method of obtaining network authentication of a user of an image processing device, comprising the steps of: transmitting user authentication information from the image processing device to a first computer remote from the image processing device; transmitting the user authentication information from the first computer to a second computer remote from the image processing device and the first computer; verifying the user authentication information at the second computer; receiving a result of the verifying step at the first computer; and controlling access of the information processing apparatus to one of a plurality of applications based on the result of the verification step, the plurality of applications connected to the first computer via a network.
 21. A computer program product comprising a computer storage medium storing a computer program code mechanism which when executed by a computer, causes the computer to perform a method of obtaining network authentication of a user of an image processing device, comprising the steps of: transmitting user authentication information from the image processing device to a first computer remote from the image processing device; transmitting the user authentication information from the first computer to a second computer remote from the image processing device and the first computer; verifying the user authentication information at the second computer; receiving a result of the verifying step at the first computer; and controlling access of the information processing apparatus to one of a plurality of applications based on the result of the verification step, the plurality of applications connected to the first computer via a network.
 22. A system for obtaining network authentication of a user of an image processing device, comprising the steps of: means for transmitting user authentication information from the image processing device to a first computer remote from the image processing device; means for transmitting the user authentication information from the first computer to a second computer remote from the image processing device and the first computer; means for verifying the user authentication information at the second computer; means for receiving a result of the verifying step at the first computer; and means for controlling access of the information processing apparatus to one of a plurality of applications based on the result of the verification step, the plurality of applications connected to the first computer via a network.
 23. A system for obtaining network authentication of a user of an image processing device, comprising: a first network interface, at the image processing device configured to tramsmit user authentication information from the image processing device to a first computer remote from the image processing device; a second network interface configured to transmit the user authentication information from the first computer to a second computer remote from the image processing device and the first computer; a module, at the secomd computer, configures to verify the user authentication information at the second computer; the second network interface configured to receive a result of the verifying step at the first computer; and a module, at the first computer, configured to control access of the information processing apparatus to one of a plurality of applications based on the result of the verification step, the plurality of applications connected to the first computervia a network. 